module.exports = function (config) {
  config.set({
    basePath: "",
    frameworks: ["mocha"], //使用的框架
    plugins: [
      "karma-webpack",
      "karma-mocha-reporter",
      'karma-coverage',   // assential here
      'karma-mocha',  // assential here
      "karma-chrome-launcher",   // assential here
    ],
    files: [
      //依赖模块
      "node_modules/should/should.js",
      "test/**/*.js"
    ],
    exclude: [
      //排除文件列表
    ],
    reporters: ["mocha"],
    mochaReporter: {
      showDiff: true
    },

    port: 9876, //服务端口号

    colors: true, //启用或禁用输出报告或者日志中的颜色

    logLevel: config.LOG_INFO,

    autoWatch: true, //启用或禁用自动检测文件变化进行测试

    browsers: ["Chrome"], //测试启动的浏览器
    singleRun: false, //开启或禁用持续集成模式  设置为true, Karma将打开浏览器，执行测试并最后退出
    concurrency: Infinity, //并发级别（启动的浏览器数）
    // webpack对test文件增加es6支持
    preprocessors: {
      "test/**/*.test.js": ["webpack"]
    },
    //新增
    webpack: {
      module: {
        rules: [
          {
            test: /\.js$/,
            exclude: /(node_modules|bower_components)/,
            use: [
              {
                loader: 'babel-loader'
              },
            ]
          },
        ]
      },
      resolve: {
        alias: {
          // 在v5编译中，会出现polyfill添加提示，如果不需要node polyfille,按照提示 alias 设置为 false 即可
          crypto: false
        },
      }
    },
  });
};
